-- @owner: zou_jialiang050
-- @date: 2024-15-06
-- @testpoint: case when测试

--step1:建表;expect:成功
drop sequence if exists seq_ustore_regr_slope_018;
create sequence seq_ustore_regr_slope_018 increment by 1 start with 10;
drop table if exists t_ustore_regr_slope_018 cascade;
create table  t_ustore_regr_slope_018(
     col_1 integer,
     col_2 number(19,0),
     col_3 number(10,6)
) with (storage_type=ustore);

begin
	for i in 1..50 loop
      insert into t_ustore_regr_slope_018 values(
	  i,
      seq_ustore_regr_slope_018.nextval,
	  i+445.255
	  );
    end loop;
end;
/

--step2:case when测试;expect:成功
select case when regr_slope(case when col_1>10 then col_1 else col_2 end,case when col_1>10 then col_1 else col_2 end)>149 then regr_slope(case when col_2>10 then col_2 else col_1 end,case when col_2>10 then col_2 else col_1 end) else variance(case when col_2>50 then col_2 else col_3 end) end from t_ustore_regr_slope_018 order by 1;
select regr_slope(case when col_2>10 then col_2 else col_1 end,case when col_2>10 then col_2 else col_1 end) from t_ustore_regr_slope_018 order by 1;

--step3:清理环境;expect:成功
drop sequence if exists seq_ustore_regr_slope_018 cascade;
drop table if exists t_ustore_regr_slope_018 cascade;